package laboratorio;
import java.io.BufferedReader;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintStream;
import java.util.Vector;


public class Seccion {

	private int numeroSeccion;
	private Vector <Estudiante> estudiante = new Vector<Estudiante>();
	private Profesor profesorSeccion;
	
	BufferedReader lector=new BufferedReader(new InputStreamReader(System.in));
	public Seccion(int numeroSeccion, Vector<Estudiante> estudiante,
			Profesor profesorSeccion) {
		super();
		this.numeroSeccion = numeroSeccion;
		this.estudiante = estudiante;
		this.profesorSeccion = profesorSeccion;
	}

	public Seccion() {
		super();
	}

	public int getNumeroSeccion() {
		return numeroSeccion;
	}



	public void setNumeroSeccion(int numeroSeccion) {
		this.numeroSeccion = numeroSeccion;
	}



	public Vector<Estudiante> getEstudiante() {
		return estudiante;
	}



	public void setEstudiante(Vector<Estudiante> estudiante) {
		this.estudiante = estudiante;
	}



	public Profesor getProfesorSeccion() {
		return profesorSeccion;
	}



	public void setProfesorSeccion(Profesor profesorSeccion) {
		this.profesorSeccion = profesorSeccion;
	}
	
    
    
	
	public void AsignarProfesor(Profesor P){
		
		String ced="";
		String nombre="";
		String apell="";
		String tit="";
		
		P.setCedula(ced);
		P.setNombre(nombre);
		P.setApelllido(apell);
		P.setTitulo(tit);
		
	}
	
	public void InscribirEstudiante(Estudiante E){
	
		String ced="";
		String nombre="";
		String apellido="";
		
		E.setCedula(ced);
		E.setNombre(nombre);
		E.setApelllido(apellido);
	    estudiante.addElement(E);	
		
			
	}
	
	public String Buscar (String cedulanueva)
	{

	    int j=0;
		boolean encontro=false;
	
		for (int i=0;i<estudiante.size();i++)
		{
			int comp = estudiante.elementAt(i).getCedula().compareTo(cedulanueva);	
			if (comp==0)
			{

				System.out.println("Estudiante:"+"  "+ estudiante.elementAt(i).getNombre()+"   "+estudiante.elementAt(i).getApelllido());
				
				encontro=true;
				j=i;
		}
			}
			
		if(!encontro)
			System.out.println("El estudiante no existe en la seccion");
	
	return estudiante.elementAt(j).getCedula();	
}
	
	public void retirarEstudiante (String cedulanueva)
	{

	   
		boolean encontro=false;
	
		for (int i=0;i<estudiante.size();i++)
		{
			int comp = estudiante.elementAt(i).getCedula().compareTo(cedulanueva);	
			if (comp==0)
			{

				System.out.println("Estudiante:"+"  "+ estudiante.elementAt(i).getNombre()+"   "+estudiante.elementAt(i).getApelllido());
				encontro=true;
		
				estudiante.remove(i);
				System.out.println("El estudiante fue retirado con exito");
				
		}
			}
			
		if(!encontro)
			System.out.println("El estudiante no existe en la seccion");
}
	


		
	public void aplicarEvaluacion (String cedulanueva) throws IOException
	{

	    Profesor profesor=new Profesor();
		boolean encontro=false;
		float promedio=0;
		float acumuladorNota=0;
	   
	    
		for (int i=0;i<estudiante.size();i++)
		{
			int comp = estudiante.elementAt(i).getCedula().compareTo(cedulanueva);	
			if (comp==0)
			{

				System.out.println("Estudiante:"+" "+ estudiante.elementAt(i).getNombre()+"  "+estudiante.elementAt(i).getApelllido());
				encontro=true;
				estudiante.elementAt(i).presentarEstudiante();
				  	
	               System.out.println("                                      ");
                System.out.println("\t==============================");
                System.out.println("\t NOTA1     NOTA2       NOTA3     " );
               System.out.println("\t "+estudiante.elementAt(i).getNota1()+"     "+estudiante.elementAt(i).getNota2()+"  "+estudiante.elementAt(i).getNota3());
              
               profesor.evaluarEstudiante(estudiante.elementAt(i));	
               
               
                                                 	
			}
			acumuladorNota=estudiante.elementAt(i).acumuladorNotas()+acumuladorNota;		
	}
		promedio=acumuladorNota/estudiante.size();
		System.out.println("El promedio de notas de la seccion es:"+ acumuladorNota);	
		
		if(!encontro)
			System.out.println("El estudiante no existe en la seccion");
}
	
/*public float promedioNotas(){
	
	float promedio=0;
	float acumuladorNota=0;
	Vector<Estudiante> estudiante=new Vector <Estudiante>();
	
	for(int i=0;i<estudiante.size();i++){
		
		acumuladorNota=estudiante.elementAt(i).getNotaFinal();
		promedio=acumuladorNota/estudiante.size();
		
	}
	return promedio;
}
*/
			    
  public void imprimirAprobados(Vector<Estudiante> estudiante){
	  try{
		  FileOutputStream salida;
		  PrintStream ps;
		  String nombreArchivo="vector.txt";
		  String texto="";
		  
	  BufferedReader br;
	  br= new BufferedReader(new InputStreamReader(System.in));
	  
  
salida= new  FileOutputStream(nombreArchivo);

ps=new PrintStream(salida);
ps.println(texto);
System.out.println("vector" + nombreArchivo);

ps.close();
	  }
	  
	  catch (Exception e){
	  		  System.err.println(e);
		  
	}
  }
}
  
	 
    
  
    
    
    
    
    
    
    

